package Thread;
/*创建线程---第三种方案:匿名内部类[推荐:创建1次]
        Lambda表达式---JDK1.8推出新版本:简化匿名内部类写法* Lambda表达式也叫函数式表遍历!功能:简化匿名内部类
        *	简化集合遍历功能
        *	简化功能方法 简化IO流功能
        * Lambda表达式语法:()->{},属于功能性接口!
        *()代表
        *->代表
        *{}代表
       * 需求:创建接口	Insert 插排	提供:电
        *子实现类 Computer 电脑
         *子类实现接口--完成对象创建[创建1次]匿名内部类方式完成对象创建
 */
public class LambdaAPI {
    public static void main(String[] args) {
//创建插排接口--必须使用子实现类
// Insert cp=new Computer();;//多态:造型
// cp.Dian();
//子实现类---创建1次对象---匿名内部类:支持接口以及抽象类创建
    /*   Insert cp = new Insert() {
           public void Dian(long money, char ch) {
               System.out.println("电脑通电了");
           }
        };
       cp.Dian(100,'2');*/
        //使用Lambda表达式---简化方法
        Insert cp=(money,ch)->{return "电脑通电了~";};
        cp.Dian(100,'2');
/**Lambda表达式【简化方法]---匿名内部类【简化1个子类]【接口创*()代表方法中参数，情况①:无参数，不可以删除
 *	②:有参数，有1个参数,括号删除
 *	③:有参数，有2个参数以上，不可以删除
 * -> 代表new对象的过程	2
 * {}代表方法中内容，情况
 * 	①:看方法返回值 void空传入输出语句，删除花括号
 * 	②:看方法返回值Java数据类型return Java数据类型;
 * 	【两种:八大基本数据类型|引用类型]
 * 	返回值存在return不可以删除花括号[推荐]
 * 	2.1返回值不存在return可以删除花括号[不推荐]
 *	③:看方法返回值返回值集合不可以删除花括号
 */
    }
}
    //创建插排--接口
    interface Insert{
    public String Dian(long money, char ch);
    }
//创建插排实现类--电脑类
/*class Computer implements Insert {
    public void Dian() {

    }
 */
